import * as utils from "../utils";
import Vue from "vue";
import VueI18n from "vue-i18n";

const getLangList = ()=>{
    return new Promise((resolve,reject) => {
        utils.uniRequest('api/Lang/getLangList').then(res=>{
            console.log("-> res========", res);
            if(res.status==200){
                resolve(res.data.data[0])
                console.log("-> ", type);
            }else{
                console.log("-> langData", res);
                reject(res)
            }
        })

    })
}

getLangList()

const langRequest = (id,type)=>{
    return new Promise((resolve,reject) => {
        utils.uniRequest('api/Lang/getLangKeyValue',{lang_id:id}).then(res=>{
            if(res.statusCode==200){
                resolve(res.data.data[0])
                let data ={}
                data[type] =  res.data.data[0]
                uni.setStorageSync(type, data)

            }else{
                console.log("-> langData", res);
            }
        })
    })
}

langRequest(2,'zh')
console.log("->uni.getStorageSync('zh') ", uni.getStorageSync('zh') );
var zh,en,kmkh,langType;
zh =   uni.getStorageSync('zh')|| {}
en =   uni.getStorageSync('en')|| {}
kmkh =   uni.getStorageSync('kmkh') || {}

langType = uni.getStorageSync('langType') || 'zh';

uni.$on('changeLang',res=>{
    langType = res.type
    Vue.prototype.$langType = langType
})

// 构造i18n对象
const i18n = new VueI18n({
    // 默认语言，这里的local属性，对应message中的zh、en属性
    locale:langType,
    // 引入语言文件
    messages: {
        // 这里的属性名是任意的，您也可以把zh设置为cn等，只是后续切换语言时
        // 要标识这里的语言属性，如：this.$i18n.locale = zh|en|zh|xxx
        'zh': zh,
        'en': en,
        'kmkh':kmkh,
    }
})

Vue.prototype.$langType = langType
// 由于微信小程序的运行机制问题，需声明如下一行，H5和APP非必填
Vue.prototype._i18n = i18n
